package mx.com.asteca.persistencia.entidades;
// Generated 31/07/2013 11:41:38 AM by Hibernate Tools 3.2.1.GA


import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * CatGral generated by hbm2java
 */
@Entity
@Table(name="cat_gral"
    ,catalog="astecadb"
)
public class CatGral  implements java.io.Serializable {


     private int idCatGral;
     private TiposCatGral tiposCatGral;
     private String cveRegistro;
     private String dsc;
     private String estatus;
     private Short activo;
     private Set<Equipos> equiposes = new HashSet<Equipos>(0);
     private Set<ProgramaEstudios> programaEstudioses = new HashSet<ProgramaEstudios>(0);
     private Set<Materias> materiases = new HashSet<Materias>(0);
     private Set<Aulas> aulases = new HashSet<Aulas>(0);
     private Estatus idEstatus;

    public CatGral() {
    }

	
    public CatGral(int idCatGral) {
        this.idCatGral = idCatGral;
    }
    public CatGral(int idCatGral, TiposCatGral tiposCatGral, String cveRegistro, String dsc, String estatus, Short activo, Set<Equipos> equiposes, Set<ProgramaEstudios> programaEstudioses, Set<Materias> materiases, Set<Aulas> aulases) {
       this.idCatGral = idCatGral;
       this.tiposCatGral = tiposCatGral;
       this.cveRegistro = cveRegistro;
       this.dsc = dsc;
       this.estatus = estatus;
       this.activo = activo;
       this.equiposes = equiposes;
       this.programaEstudioses = programaEstudioses;
       this.materiases = materiases;
       this.aulases = aulases;
    }
   
     @Id 
     @GeneratedValue(strategy=GenerationType.IDENTITY)
    @Column(name="ID_CAT_GRAL", unique=true, nullable=false)
    public int getIdCatGral() {
        return this.idCatGral;
    }
    
    public void setIdCatGral(int idCatGral) {
        this.idCatGral = idCatGral;
    }
@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="ID_TIPO_CAT_GRAL")
    public TiposCatGral getTiposCatGral() {
        return this.tiposCatGral;
    }
    
    public void setTiposCatGral(TiposCatGral tiposCatGral) {
        this.tiposCatGral = tiposCatGral;
    }
    
    @Column(name="CVE_REGISTRO", length=30)
    public String getCveRegistro() {
        return this.cveRegistro;
    }
    
    public void setCveRegistro(String cveRegistro) {
        this.cveRegistro = cveRegistro;
    }
    
    @Column(name="DSC", length=50)
    public String getDsc() {
        return this.dsc;
    }
    
    public void setDsc(String dsc) {
        this.dsc = dsc;
    }
    
    @Column(name="ESTATUS", length=20)
    public String getEstatus() {
        return this.estatus;
    }
    
    public void setEstatus(String estatus) {
        this.estatus = estatus;
    }
    
    @Column(name="ACTIVO")
    public Short getActivo() {
        return this.activo;
    }
    
    public void setActivo(Short activo) {
        this.activo = activo;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="catGral")
    public Set<Equipos> getEquiposes() {
        return this.equiposes;
    }
    
    public void setEquiposes(Set<Equipos> equiposes) {
        this.equiposes = equiposes;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="catGral")
    public Set<ProgramaEstudios> getProgramaEstudioses() {
        return this.programaEstudioses;
    }
    
    public void setProgramaEstudioses(Set<ProgramaEstudios> programaEstudioses) {
        this.programaEstudioses = programaEstudioses;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="catGral")
    public Set<Materias> getMateriases() {
        return this.materiases;
    }
    
    public void setMateriases(Set<Materias> materiases) {
        this.materiases = materiases;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="catGral")
    public Set<Aulas> getAulases() {
        return this.aulases;
    }
    
    public void setAulases(Set<Aulas> aulases) {
        this.aulases = aulases;
    }

    @ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="ID_ESTATUS")
	public Estatus getIdEstatus() {
		return idEstatus;
	}


	/**
	 * @param idEstatus the idEstatus to set
	 */
	public void setIdEstatus(Estatus idEstatus) {
		this.idEstatus = idEstatus;
	}




}


